import Vue from 'vue'
import App from './App.vue'
import router from './router'
import store from './vuex/store'
import './registerServiceWorker'
//初始化所有的样式
import 'reset-css';
import '@/assets/css/style.css'
//导入element-ui
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
Vue.use(ElementUI);
//引入mixin文件      
import '@/mixins/mixins'
//引入font-awsome
import '@/assets/css/font-awesome.css'
import '@/utils/axios'
//以下为简写,默认引入的是apis文件下的index.js
import '@/apis'
Vue.config.productionTip = false
//配置路由守卫,全局路由,判断是否已经登录,如果
//未登录则跳转到登录页面
router.beforeEach((to,from,next)=>{
   //判断打开的页面是否是登录页面,
   /*
    如果是登录页面,表示你要到登录页面去重新登录,
    则会将之前的登录信息清除掉,
   */
  if(to.path==='/Signin'){
    // 删除所有之前存储的数据
      localStorage.clear();
      next();
  }else{
    // 如果打开的不是登录页面,则要判断是否已经登录了
    /**
     * 如果已经登录,则打开指定页面,
     */
    if(localStorage.getItem("token")){
      //跳转到指定的组件(页面)
      next();
    }else{
      // 如果没有登录,则跳转到登录页面,并且将原来要跳转的地址带过去
      //等登录完成之后,直接跳转到redirect对应的路由的页面
      next({path:'/Signin',query:{redirect:to.path}})
    }
  }
})

new Vue({
  router,
  store,
  render: h => h(App)
}).$mount('#app')
